package org.scboy.rbac.service;

import java.util.List;

import org.scboy.utils.entitys.coobi.Model;
import org.scboy.utils.entitys.coobi.Page;

/**
 * 
 *业务系统相关功能。
 * @author yanghao
 *
 */
public interface SystemService {
	/**
	 * 分页查询系统（查询参数Model，分页参数Limit）。
	 * @param model
	 * @param limit
	 * @return
	 */
   Page page(Model model);
   /**
	 * 新增系统（系统Model）。
	 * @param model
	 * @return
	 */
   boolean add(Model model);
   /**
 	 * 删除系统（系统ID）。
 	 * @param id
 	 * @return
 	 */
   boolean delete(String id);
   /**
	 * 更新系统（系统Model）。
	 * @param id
	 * @return
	 */
   boolean update(Model model);
   /**
	 * 启用禁用（系统ID）。
	 * @param id
	 * @return
	 */
   boolean checkState(String id);
   
   /**
    * 改变系统显示状态。
    * @param id
    * @return
    */
   boolean display(String id);
   /**
  	 * 根据系统ID获取系统信息（系统ID）。
  	 * @param id
  	 * @return
  	 */
   Model get(String id);
   
   /**
	 * 排序升降序。
	 * @param id
	 * @param type 0升序，1降序。
	 * @return
	 */
	boolean sort(String id,int type);
	
	/**
	 * 根据登录人，获取可访问的系统
	 * @param token
	 * @return
	 */
	List<Model> list(String token);
	
	/**
	 * 菜单配置首次加载系统数据
	 */
	List<Model> listTree();
	
}
